One popular presentation system is popularly known as the “World Wide Web”, “WWW” or simply the “Web”. In a typical use, a user uses a Web client (such as a browser) to issue a request identified with a Uniform Resource Locator (“URL”) to a Web server and the Web server returns a page to the Web client. The Web client then might render the returned page and present it to the user in response to the user's request. The page might contain more than one element. Examples of elements include text, images, banner advertisements, image maps, clickable areas, JavaScript™ objects, Java™ objects, imbedded code, etc.
A presentation of a page in response to a request might be in response to more than just a URL, but might include form data, user data and history data. For example, a request from a Web client might include search terms entered by the user to which the Web server responds by determining a set of search results based on the search terms, user data and/or the page in which the user entered the search terms, etc., and returning a page containing some or all of the search results and possibly including one or more “presentations”. A presentation can be a banner advertisement, a clickable link, an area of text, an area of image or video, an area delineated by HTML code or the like, a pop-up window, a pop-under window, etc., that appears to the user with, or associated with, the search results.
Some presentations might be independent of the search terms, user data, time, date or page on which the user enters their search terms, etc. (collectively, the “state” of the search). Examples of state-independent presentations might be a “help” button, a “home” button, a search provider logo or a system-wide advertisement.
Where the Web server has, appears to have, or is linked to, a computing system that has search capabilities, the system is often referred to as a search server. Some known search servers customize presentations based on the search terms used by the user. For example, a number of advertisers might provide the operator of a search server with advertisements and pay to have those advertisements included as presentations on pages containing search results and to do so in a targeted manner, so that users see more relevant advertisements. As an example, an automobile manufacturer might provide advertisements that are to be presented along with search results when the user's search term(s) included that manufacturer's trademark. In another example, an advertiser might provide a set of links, wherein the presentation to the user includes search results and one or more “sponsored” links, wherein each sponsored link is presented at the behest of a sponsor interested in having the link presented to selected users of the search server.
The user can be a human user interacting with a user interface of a computer that processes the requests and/or forwards the requests to other computer systems. The user could also be another computer process or system that generates the request programmatically. In the latter instance, it is likely that the requesting computer user will also programmatically process the results of the request, but it might instead be the case that a computer user makes a request and a human user is the ultimate recipient of the response, or even the opposite, where a human user makes a request and a computer user is the ultimate recipient of the response.
One common system and set of protocols in use today is referred to as the Internet, a global internetwork of networks, wherein nodes of the network send requests to other nodes that might respond with content, such as search results. One protocol usable for content requesting is the HyperText Transport Protocol (HTTP), wherein an HTTP client, such as a browser) makes a request for content referenced by a Uniform Resource Locator (URL) and an HTTP server responds to the requests by sending content specified by the URL. Of course, while this is a very common example, content retrieval is not so limited.
For example, networks other than the Internet might be used, such as token ring, WAP, overlay, point-to-point, proprietary networks, etc. Protocols other than HTTP might be used to request and transport content, such as SMTP, FTP, etc. and content might be specified by other than URL's. Portions of present invention are described with reference to the Internet, a global internetwork of networks in common usage today for a variety of applications, but it should be understood that references to the Internet can be substituted with references to variations of the basic concept of the Internet (e.g., intranets, virtual private networks, enclosed TCP/IP networks, etc.) as well as other forms of networks. It should also be understood that the present invention might operate entirely within one computer or one collection of computers, thus obviating the need for a network.
The content itself could be in many forms. For example, some content might be text, images, video, audio, animation, program code, data structures, formatted text, etc. For example, a user might request content that is a page having a news story (text) and an accompanying image, with links to other content (such as by formatting the content according to the HyperText Markup Language (HTML) is use at the time). Search results are generally thought of as listings of hits generated by a search engine accompanied by targeted presentations, but other formats might occur as well.
HTML is a common format used for pages or other content that is supplied from an HTTP server. HTML-formatted content might include links to other HTML content and a collection of content that references other content might be thought of as a document web, hence the name “World Wide Web” or “WWW’ given to one example of a collection of HTML-formatted content. As that is a well-known construct, it is used in many examples herein, but it should be understood that unless otherwise specified, the concepts described by these examples are not limited to the WWW, HTML, HTTP, the Internet, etc.
In a typical search query, the user is presented with a dialog box wherein the user enters search query terms and initiates a request based on those terms. One example of a search is a Yahoo! search. One way to perform a Yahoo! search is by directing a web browser client to the page with the URL www.yahoo.com and entering a search query in the search dialog box provided on that page. In response to such a query, which the web browser client sends to a www.yahoo.com server (or other server as directed by references contained in the page's HTML or other code), the receiving server in turn performs a search or causes a search to be performed and returns search results to the web browser client, usually in the form of a page or pages with search results and possibly other presentations.
The other presentations might include keyword-based advertisements and keyword-based sponsored links. With keyword-based presentations, an entity desiring that the presentation be presented to a user or set of users agrees to terms with the operator of the search server, or its agent or provider, wherein the presentation is presented to users that use designated keywords in their search request and meet other state criteria. However, because of the large number of possible keywords that a user might use, the large number of potential advertisers, and the large number of searches performed by top search servers, there is a need for streamlining and simplifying the process of making such arrangements.